/**
 * @date 2006-3-28 13:20:14
 *
 */
package org.nanhill.moo.dao;

import org.nanhill.moo.domain.permission.CustomizeRole;
import org.nanhill.moo.domain.permission.SystemRole;

/**
 * Permission Dao
 * 
 * RUID of permission, role
 * 
 * @author alin [xalinx at gmail dot com]
 * 
 */
public interface PermissionDao {
	/**
	 * Read cusomize role.
	 * 
	 * @param roleName
	 * @return
	 */
	CustomizeRole findCustomizeRole(String roleName);

	/**
	 * Read system role.
	 * 
	 * @param <E>
	 * @param roleClass
	 * @return
	 */
	<E extends SystemRole> SystemRole findSystemRole(Class<E> roleClass);
}
